Convolution


The Convolution

In the areas of Digital Signal Processing (DSP) and Communications, the operation of convolution plays a very important role because it can be used to find the output of a Linear Time-Invariant system (LTI) and simplify several operations. The discrete convolution is computed between two sequences using the formula shown below. On the other hand, the continuous convolution is computed between two continuous signals as shown below.
En las áreas de Procesamiento Digital de Señales (DSP) y Comunicaciones, la operación de convolución juega un papel importante porque esta puede ser usada para encontrar la salida de un Sistema Linear Invariante en el Tiempo (LTI) y simplificar varias operaciones. La convolución discreta se calcula entre dos secuencias usando la fórmula mostrada debajo. Por otro lado, la convolución continua se calcula entre dos señales continuas como se muestra debajo.

Convolution

Tip
The figure below illustrates how to compute the convolution between two sequences. First, the second sequence is reversed. Second, the sequences are placed so that there is only one overlapped element between both sequences; the elements are element-wise multiplicated and the summation is the first value of the convolution. Third, the second sequence is shifted one element to the right and the second element of the convolution is computed as before. The process repeats until the sequences do not overlap.
La figura de abajo muestra cómo calcular la convolución entre dos secuencias. Primero, la segunda secuencia se invierte. Segundo, las secuencias son colocadas de tal forma que sólo hay un elemento traslapado entre las dos secuencias; los elementos son multiplicados uno a uno y la suma es el primer valor de la multiplicación. Tercero, la segunda secuencia se desplaza un elemento a la derecha y el segundo elemento de la convolución se calcula como antes. El proceso se repite hasta que las secuencias no se traslapan.

Example

Problem 1
Search the Internet to find five applications of the convolution.
Busque en la Internet cinco aplicaciones de la convolución.

Problem 2
Create a Dialog Wintempla application called ConvCalculator to compute the convolution between two sequences.
Cree una aplicación de diálogo de Wintempla llamada ConvCalculator para calcular la convolución entre dos secuencias.

ConvCalculatorRun

ConvCalculator.cpp
. . .

void ConvCalculator::btCalculate_Click(Win::Event& e)
{
     //_____________________________________________ 1. Read input
     valarray<double> x, y, result;
     Sys::Convert::ToVector(tbxX.Text, x);
     Sys::Convert::ToVector(tbxY.Text, y);
     //_____________________________________________ 2. Compute convolution
     Math::Dsp::Convolution(x, y, result);
     //_____________________________________________ 3. Display result
     wstring text;
     Sys::Convert::ToString(result, text);
     tbxResult.Text = text;
}

© Copyright 2000-2021 Wintempla selo. All Rights Reserved. Jul 22 2021. Home